#ifndef QTLASER_H
#define QTLASER_H

#include "Laser.h"
#include "QtCellSprite.h"
#include "QtLineSprite.h"
#include "Direction.h"


class QtLaser: public QtCellSprite, public Laser
{
public:
	QtLaser(const Direction& direction, QtSprite *parent = 0);
	~QtLaser();

	void EnableLaser();
	void DisableLaser();
	void SetLaserDestination(const QPointF& pos);
	void SetDirection(const Direction& direction);
	void SetLaserColor(QColor color);

protected:
	void BackgroundUpdated();

private:
	unsigned int duration;
	Direction headDirection;
	QtLineSprite *laserBeam;
	QPointF laserDestination;
};

#endif //QTLASER_H